package com.mortarnav.view;
import android.animation.Animator;
import android.animation.AnimatorListenerAdapter;
import android.animation.AnimatorSet;
import android.content.Context;
import android.view.View;
import com.mortarnav.R;
import com.mortarnav.ToolbarOwner;
import com.mortarnav.presenter.SubnavPresenter;
import com.mortarnav.presenter.stackable.SubnavStackableComponent;
import javax.inject.Inject;
import architect.NavigatorView;
import architect.commons.view.PresentedFrameLayout;
import architect.robot.DaggerService;
import architect.view.HandlesBack;
import architect.view.HandlesViewTransition;
import autodagger.AutoInjector;
import butterknife.Bind;
import butterknife.ButterKnife;
/**
* @author Lukasz Piliszczuk - lukasz.pili@gmail.com
*/
@AutoInjector(SubnavPresenter.class)
public class SubnavView extends PresentedFrameLayout<SubnavPresenter> implements HandlesBack, HandlesViewTransition {
@Inject
protected ToolbarOwner toolbarOwner;
@Bind(R.id.sub_navigator)
public NavigatorView navigatorView;
public SubnavView(Context context) {
super(context);
DaggerService.<SubnavStackableComponent>get(context).inject(this);
View view = View.inflate(context, R.layout.subnav_view, this);
ButterKnife.bind(view);
}
@Override
public boolean onBackPressed() {
return presenter.backPressed();
}
@Override
public void onViewTransition(AnimatorSet set) {
if (set != null) {
set.addListener(new AnimatorListenerAdapter() {
@Override
public void onAnimationEnd(Animator animation) {
toolbarOwner.setTitle("Subnav presenter!");
}
});
} else {
toolbarOwner.setTitle("Subnav presenter!");
}
}
}